Software Magazine - February/March
2001
Collaboration:
Development & Management
Collaborating
on Project Success
Collaborative management techniques bridge the needs of developers, project managers,
and infrastructure operations staff to ensure the applications needed to
support e-business can be built quickly and managed effectively. Here is a
report on trends in collaborative management to support e-business from The
Standish Group.
By Jim
Johnson, Karen D. Boucher, Kyle Connors, and James Robinson
Project Management:
The
Criteria for Success
There's great news on the project management front, according to
The Standish Group, West Yarmouth, Mass., a research firm that focuses on mission-critical
project management applications. Its most recent findings indicate researchers
and project managers alike are learning how to become more successful at IT
project management. According to results of Standish's 1994 CHAOS study, a
research report published annually since that year, only 28,000 application
development projects met the criteria for success—completed on time, on budget,
and with all the features and functions originally specified. Last year's
results show that 78,000 U.S. projects were successful.
The
reasons for the increase in successful projects vary. First, the average cost
of a project has been more than cut in half. Better tools have been created to
monitor and control progress, and more highly skilled project managers are using
improved management processes. The fact that there are processes is
significant in itself.
Most of
these new projects are well within The Standish Group's criteria established in
"Recipe for Success, 1998," which limits project duration to six
months and project staff to six people. This article is based on information
from the company's latest paper, "Extreme CHAOS 2001."
The Road
to success
Success
rates are up across the board, while cost and schedule overruns are declining. The
CHAOS research timeline is evidence of steady improvement in IT project
management. In 1994, only 16% of application development projects met the
criteria for success—completed on time, on budget, and with all
features/functions originally specified. In 2000, 28% of projects were in the
successful column. (See the figure below.)
Standish
categorizes projects into three resolution types:
Successful:
The project is completed on time and on budget, with all features and functions
originally specified.
Challenged:
The project is completed and operational, but overbudget, late, and with fewer
features and functions than initially specified.
Failed: The
project is canceled before completion, or never implemented.
Tracking
U.S. project outcomes showed that in 1994, 28,000 projects were successful,
while in 2000, the number rose to 78,000—almost a threefold increase. Conversely,
failed projects amounted to 54,000 in the 1994 study vs. 65,000 in the 2000
study. This was an 18% increase, while overall project growth exceeded 60%.
Challenged projects grew at a rate of 62%, to equal 137,000 over the 1994
number of 93,000.
Cost
overruns in 1994 equaled 189% over the original estimate. This was reduced from
69% in the 1998 study and down to 45% in the 2000 study. Time overruns dropped
from 222% in 1994 to 63% in 2000. Another piece of good news is that in 1994
only 61% of the required features were delivered on challenged projects,
compared with 67% in the 2000 study.
Overall,
the outlook is good. Project success rates are up, and overruns are down. More
importantly, although the number of projects is expected to double in 2001, the
rate of failure is expected to decline substantially.
What ensures a project's success? The original CHAOS study, conducted in 1994, identified 10 success factors. Standish has updated the CHAOS Ten for 2000. Although no project requires all 10 factors to be successful, the more factors present in the project strategy, the higher the confidence level. (See Table 1, "Recipe for Success: CHAOS Ten," below.)
|
|||
|
Recipe for Success: CHAOS
Ten |
|
|
|
|||
|
Confidence
Level |
Success
Factors |
|
|
Executive
support |
18 |
|
|
User
involvement |
16 |
|
|
Experienced
project manager |
14 |
|
|
Clear
business objectives |
12 |
|
|
Minimized
scope |
10 |
|
|
Standard software infrastructure |
8 |
|
|
Firm
basic requirements |
6 |
|
|
Formal methodology |
6 |
|
|
Reliable
estimates |
5 |
|
|
Other
criteria |
5 |
|
|
Table 1.
Each factor has been weighted according to its influence on project success. The
more points, the lower the project risk.
1 Executive support. Traditionally, executive support occupied the No. 2 spot; however, it
is now the No. 1 factor in project failure. Executive support influences a
project's process and progress. Lack of executive input can jeopardize a
project.
2 User involvement. Lack of user involvement traditionally has been the No. 1 reason for
project failure. Conversely, it has been the leading contributor to project
success. Even when delivered on time and on budget, a project can fail if it
doesn't meet user needs or expectations. However, this year user involvement
has moved to the No. 2 position. Despite how that may sound, user involvement
hasn't decreased in importance; it's just that IT professionals have, in
effect, solved this major problem.
3 Experienced project manager. Ninety-seven percent of successful projects
have an experienced project manager at the helm.
4 Clear business objectives. This factor has moved down one spot because evidence shows that
experienced project managers increase success rates.
5 Minimized scope. Wrapping up the top five is minimized scope. Time is the enemy of all
projects, and since scope affects time, or project duration, they are linked. Clearly
then, minimizing scope increases a project's chances of success. Minimized
scope has replaced small milestones. While these two factors are similar, the
act of minimizing scope leads to greater success than does creating small
milestones. Concentrating on the top five will result in 70 success points.
6 Standard software infrastructure. Requirements are in a state of constant flux,
but infrastructure needs stability. The Standish Group's research shows that
70% of application code is infrastructure. Some of this code is unique to the
application; nonetheless, much of this code could be purchased from an
infrastructure vendor.
By using
standard infrastructure, the application development team can concentrate on
business rules rather than on technology. Many application development projects
fail not in stand-alone application development, but in existing application
integration. Standard infrastructures can shortcut application integration.
7 Firm basic requirements. The word "basic" refers to base-level requirements. Creating
minimal, obtainable base requirements and then developing those features will
reduce the effect of change. Delivering minimal features allows users and
executive sponsors to see quick results. As a result, project managers are
better prepared to articulate the needs and priorities of the next project
phase.
8 Formal methodology. This provides a realistic picture of the project and resources
committed to it. And it results in steps and procedures the team can reproduce
and reuse. It also enables the team to maximize consistency. And it
incorporates lessons learned into active projects. The process encourages a go
or no-go decision checkpoint. It also helps the project team proceed with a
higher level of confidence, or halt or alter steps to fit changing
requirements. CHAOS research shows that 46% of successful projects use a formal
project management methodology, compared with 30% of challenged and failed
projects. So, this factor should increase success rates by about 16%.
9 Reliable estimates. Systematic project estimating must be approached realistically, because
estimating is just plain hard. Then add to that the difficulty of developing,
purchasing, and integrating components into existing and packaged applications,
and outside services. IT managers must use all their collective knowledge and
experience to come up with estimates that reflect the true effort required.
10 Other criteria. In last place is a collection of other factors. These factors include
small milestones, proper planning, competent staff, and ownership. In the past,
each of these factors was given its own category.
The
CHAOS Ten success factors continue to be valuable for assessing project
potential. While nothing can guarantee project success, adhering to the CHAOS
Ten will increase your odds of putting together a winning project.
The
Standish Group predicts that most projects started and resolved this year will
be microprojects: ones lasting no more than four months and run by four people.
CHAOS research shows minimization as a key factor in successful projects. The
microproject is the ultimate in minimization. Many last only three to four
weeks. Don't confuse microprojects with milestones—microprojects live and die
on usable deliverables.
The Web
and standard infrastructure have made the microproject a viable entity. New
application versions can be brought up quickly, and bugs can be found,
corrected online, and benefits realized immediately. There's no need for
release dates, shipping codes, or drawn-out user training. One of Standish's
Fortune 500 clients mandated microprojects. The company's president must
approve any project estimated to cost more than $100,000.
However,
the advent of the microproject has made it harder to manage resources, and has
turned code version management into a nightmare. While microprojects are
deliverables by themselves, they rarely stand alone. Therefore, changes in one
project can affect the collection of objects, individual programs, interfaces,
and databases. These entities could be in the thousands, while teams and
developers span time zones. To address these issues requires an asset-based
change management tool.
An
asset-based tool that supports configuration management over multiple
technologies and programming styles is just the ante. The tool must support
versions and relationships of source files, directories, test cases, and
configurations. The tool must also be able to communicate the project to the
development community to prevent duplication and make developers aware of the
project's use and reuse. It should control concurrent and parallel versions and
use roles-based access control. This type of tool can go a long way in
maintaining and developing successful applications.
Collaborating on Project Success - Part II
PSA vs.
EPM
Two
types of project management tools help service groups in this regard:
professional service automation (PSA) and enterprise project management (EPM).
PSA
tools form a suite of software modules or applications that together handle
multiple projects and contributors (e.g., staff and contractors). PSA focuses
on optimizing service processes for acquiring, managing, and fulfilling service
engagements external to the enterprise. EPM software modules also manage
multiple projects. However, EPM tools are most often used to manage the
enterprise organization's internal projects.
Although
similar, PSA and EPM tools aren't identical products with different names. Since
both share functions and applications, however, is it possible or useful for
project management to differentiate between the two when choosing vendors? The
answer is a qualified yes. Rather than pigeonholing vendor products into one
category or the other, project managers can benefit from differentiating the
tools based on their functional modules.
Professional
service organizations (PSOs) have several mission-critical needs that may be
secondary or less important to enterprise project organizations (EPOs). Several
of these mission-critical PSA needs are as follows:
PSA
software should support PSOs in identifying profitable business opportunities,
entering into profitable contracts, and expediting and fulfilling those
contracts with a high level of customer satisfaction.
IT groups looking to use EPMs may or may not have those same needs. It depends on factors that vary across enterprises:
Differing
functional modules or applications can be bundled with either PSAs or EPMs. (Vendors
use their own proprietary names for describing the same functional components. Descriptions
here address PSA and EPM functional characteristics in generic terms.) The
following overview can shed further light on some subtle differences and
similarities between PSAs and EPMs. During the vendor selection process, IT
buyers can use these as checklists.
Resource
manager modules are the heart of most PSA tools. They are used to staff
engagements based on available resource skill, and pinpoint the best talent to
perform required tasks. A project's skill requirements are inputted and
compared with the staff skills inventory. Work plans matching staff
availability to skill requirements are then created. Resource managers use a
common repository of staff skills and historical project information.
The
engagement manager tracks and reports on key milestones and dependencies during
the service engagement. Project revenues, expenses, and resource schedules as
well as task completion status can be viewed, analyzed, and modified as
necessary. In addition to identifying missed milestones, the engagement manager
can flag potential problems and issues. The engagement manager facilitates
addressing problems and issues with appropriate management at the right time.
The
knowledge manager module helps project personnel understand, share, and reuse
knowledge and experiences gained from other service engagements. This module
may help identify best practices for reuse or fill in staff on actions worth
avoiding in the future. A knowledge manager module can also help users create
and track staff development plans.
The
project manager module schedules, tracks, and reports on individual projects or
a project portfolio. In general, the project manager application reports time
and progress, showing how they stack up against assigned tasks and work
breakdowns, thus providing the real picture of project performance. Views such
as Pert and Gantt charts offer easy interpretation. EPM and PM tools differ
most in that EPM's common database or repository gives project stakeholders and
other applications access to all project information.
A
content manager publishes project progress to stakeholders internally (for EPM)
or to clients externally (PSA). Content manager functionality should not be
confused with Web content managers. Project administrators and team members use
content managers to publish project status, schedules, summaries, and key
project deliverables. Some high-end content managers use agent technology to
automatically publish project status and summaries. Others provide problem and
issue notification similar to the engagement manager. The content manager's
appropriate detail and nature have become a subject for lively debate in PSO
and EPO organizations.
The
following are unique to PSAs: The marketing manager can forecast potential
sales engagements and balance these against resource requirements, helping
marketing management make go or no-go decisions on the details of service
engagements. Projects are selected from a prospect portfolio by analyzing past
margins or considering currently available skills. It also can be helpful in
proposal writing and sales pipeline tracking. Typically, enterprise service
organizations (ESOs) do not need this module's depth of functionality, since
more often than not they are already chartered and funded to service their
internal clients. To ESOs, quality of service is more important than
profitability and number of service engagements. Of course, a pipeline of
qualified prospects that develop into profitable engagements is critical to PSO
success.
The
financial manager function handles such tasks as the timely administration of
contracts and client billing. This application can account for time and
material, fixed price, performance-based, and payment schedule contracts. It
also can be used for revenue recognition across clients, projects, geographies,
staff, and partners. Again, because ESOs tend to be measured on the basis of
their quality of service and not their profitability, this module is primarily
a PSA feature.
The
following are unique to EPMs: A comprehensive plan manager differentiates EPM
suites from project management tools. This module provides tools for creating
and updating project plans. After inputting different project parameters, users
can examine what-if scenarios, with time and resource needs projected. The
repository or central database is updated with the modified plan. IT service
management can then track and further modify the plan as required. In the case
of external service engagements supported by PSAs, modifying an original
service contract with clients is usually done on an exception basis only.
A
capacity manager allocates available resources across multiple projects. Although
this function is in some ways very similar to a PSA's resource manager, it
doesn't generate a plan based on resources. In an enterprise, the project
office or IT service management is expected to resolve any allocation
conflicts. Therefore, service management basically uses this module to forecast
availability of resources for specific skills. Some products allow for multiple
views. In addition, this module can facilitate granting and denying allocation
requests.
Ultimately,
PSA solutions and EPM software both enable service organizations to manage
multiple projects, track time and tasks, publish results, and manage skills. The
bottom line for service organizations is that both can help in managing the
three pillars of project management success: time, money, and function.
It's the
Infrastructure, Stupid
Webster's defines infrastructure as the
underlying foundation or basic framework (of a system or an organization). When
CHAOS University attendees were asked what this word meant, they said that an
infrastructure includes a whole host of things that must be managed—from
telephone systems and hardware rooms to personal productivity systems sitting
on desktops. Infrastructure is everything that ensures an application can run.
When
researchers talk about the importance of infrastructure for project completion,
they narrow that definition to software. Software infrastructure is the heart,
lungs, and circulatory system that jump-starts the application and keeps it
running. Standish's research shows that a software application is, on average,
70% infrastructure code. This code isn't directly tied to the project's
business requirements; rather, it provides connectivity, security,
availability, integrity, and so on.
Products
that provide infrastructure services fall under the middleware label and range
from those offering simple data connectivity to ones with a whole portfolio of
application services. The Standish Group believes it is imperative that project
teams know about commercially available products that provide these functions
and that they take advantage of them. Standish's latest research shows that
projects that create middleware have no chance of being completed on time and
on budget!
Key to this issue is the question, New or redeveloped applications most often include which types of services? Standish found the answer in its most recent International Demand Assessment and Requirements Tracking Study (I-DARTS), by reviewing 183 applications and asking participants, "What type of middleware functions will this application use?" (See Table 2, "Middleware Functions" for the results, below.)
|
|||
|
Middleware Functions |
|
|
|
|||
|
Types |
Percentage
Used |
|
|
App-to-app
messaging |
49 |
|
|
Transactional
messaging |
44 |
|
|
Stored
procedures |
42 |
|
|
Auto restart/failover |
32 |
|
|
Asynchronous
messaging |
29 |
|
|
Message
queuing |
29 |
|
|
2PC |
27 |
|
|
Remote
Procedure Call |
23 |
|
|
Broadcasting |
20 |
|
|
Guaranteed
delivery |
19 |
|
|
Publish/subscribe |
9 |
|
|
Table 2.
Shown here are the types of middleware functions required for new or
extensively redeveloped applications.
Connectivity
involves more than system and data integration; it includes integration with
other applications. The number of specialized systems required to grow a
business and help it stay competitive has exploded over the past few years. Today,
a typical business may have customer relationship management, financials,
personnel, and so on. Each of these systems grows into an island of data. Each
island develops a culture and style of its own. Some island cultures speak in
integers, some in fractions. Some are very careful as to what data they will
accept (in terms of content and format), while others aren't quite so
discriminating. Application integration solutions bridge these islands.
All
these application links create a maze of integration points. And any weak link
could lead to chaos. With so many software projects requiring this type of
infrastructure service, it's important to be able to select the right solution
for each application.
Integration
approaches range from the classic export/transfer/load (ETL) operation, to
real-time, event-driven sharing of information among applications. ETL is
usually executed on some predetermined schedule and moves a snapshot of data
from one system to another. The result is that, for some period of time, one
part of the system doesn't have current information. This can usually be
overcome by scheduling other tasks accordingly (e.g., cutting paychecks after
validating new employees). ETL is the most common and widely used approach for
sharing information. By contrast, event-driven integration moves data between
systems as soon as it becomes available, keeping the entire system up-to-date
on a near real-time basis.
Integration
bridges come in many styles and are often distinguished by the way applications
communicate. In Table 2, application-to-application messaging, transactional
messaging, asynchronous messaging, message queuing, Remote Procedure Calls,
broadcasting, guaranteed delivery, and publish/subscribe are all forms of
bridges.
In
addition to these integration options, a company should consider other services
their application may require. These could include security, integrity, and
availability. Sometimes the range of projects can be daunting—leading to the
common reaction of wanting to just develop something in-house. However, the
risky nature of doing so can't be stressed enough.
When it
comes to software infrastructure, the most common reason for failure is relying
on custom code to develop services. As Standish research shows, this approach
always leads to time and cost delays. The market offers technology proven to
ensure a solid infrastructure. Why not take advantage of it?
For
years The Standish Group has focused on how and why development projects
succeed or fail to identify methodologies involved. Traditional project
management entails delegating assignments, allocating resources, providing time
and cost estimates, and monitoring staff performance of management assignments.
At the helm is the project manager who plays the pivotal role as chief
coordinator and communicator. Project managers serve as the project focal
point. The Standish Group has identified the project manager's key
characteristics: the ability to translate business and technical requirements
between the people from these respective disciplines; the competency to
decrease project scope, thereby reducing the time frame; the ability to
organize all participants; the ingenuity to provide direction, motivation, and
inspiration; and the ability to clearly convey project requirements and
progress.
Collaboration
management has a twofold benefit: It provides an open channel of communication
that gives everyone a voice, and when key personnel leave, the project is not
completely dissolved. In this setting, project details are distributed
effectively, and activities are self-coordinated, expedited, and documented.
Jim
Johnson (jim@standishgroup.com) is chairman of The Standish Group,
West Yarmouth, Mass. Karen D. Boucher (karen@standishgroup.com) is executive vice president. Kyle Connors (kyle@standishgroup.com) is a research adviser at Standish. James Robinson (james@standishgroup.com) is also a research adviser. Call The Standish Group at 508-760-3600 or
visit www.standishgroup.com.
Read more:
Evolve: Collaborating at Peak Efficiency
Project Managers Find Tips, Tools,
and Community at gantthead.com
With Help from Visible's Tool, OPT
Converts Manufacturing App
Artemis Offers Multiproject
Planning, Control, and Tracking Software Solutions
Collaboration Center for Software
Development: speeDEV
Table: Project Management Tool
Suppliers